#tout faire
all : exec doc

#règle pour faire le fichier exécutable
exec : transitions etat automate main executable
	

#compilation des fichiers cpp

transitions : Entetes/transitions.h Src/transitions.cpp
		g++ -g -Wall -Wno-deprecated -c Src/transitions.cpp -o Objets/transitions.o

etat : Entetes/etat.h Src/etat.cpp Objets/transitions.o
		g++ -g -Wall -Wno-deprecated -c Src/etat.cpp -o Objets/etat.o

automate : Entetes/automate.h Src/automate.cpp Objets/etat.o
		g++ -g -Wall -Wno-deprecated -c Src/automate.cpp -o Objets/automate.o

main : Src/main.cpp Objets/automate.o
		g++ -g -Wall -Wno-deprecated -c Src/main.cpp -o Objets/main.o

#édition de liens

executable : Objets/automate.o Objets/transitions.o Objets/main.o Objets/etat.o
		g++ -g -Wall -Wno-deprecated -o Bin/flexux Objets/main.o Objets/etat.o Objets/transitions.o Objets/automate.o

doc :
	cd Docs && pdflatex -output-directory pdfOutput rapport.tex && pdflatex -output-directory pdfOutput rapport.tex && cd ..

dox :
	doxygen Docs/confDoxygen

clean :
	rm -rf Objets/*.o
	rm -rf Bin/*
	rm -rf Docs/pdfOutput/*
	rm -rf Docs/doxygenOutput/

tilde :
	rm -rf */*.*~
